﻿using Macro_stone.PoModel;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using SystemCenterSoa.DtoModel.Common;

namespace SystemCenterSoa.IRepository.SystemManager
{
    /// <summary>
    /// 部门和人员
    /// </summary>
    public interface IDepartmentStaffRepository
    {
        /// <summary>
        /// 部门—显示
        /// </summary>
        /// <param name="searchModel"></param>
        /// <returns></returns>
        List<DepartmentPo> DepartmentPoInquire(int pageIndex, int pageSize, string deptName);

        /// <summary>
        /// 添加部门
        /// </summary>
        /// <param name="view"></param>
        /// <returns></returns>
        bool DepartmentPoAdd(DepartmentPo view);

        /// <summary>
        /// 部门反填
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        DepartmentPo DepartmentPoOne(int id);

        /// <summary>
        /// 部门修改
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        bool DepartmentPoUpdate(DepartmentPo view);

        /// <summary>
        /// 部门删除
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        bool DepartmentPoDelete(int id);

        /// <summary>
        /// 人员管理—显示
        /// </summary>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <param name="buming"></param>
        /// <param name="name"></param>
        /// <param name="zhuang"></param>
        /// <returns></returns>
        List<StaffDto> staffPoIndex(int pageIndex, int pageSize, string buming, string name, int? zhuang);

        /// <summary>
        /// 人员管理—添加
        /// </summary>
        /// <param name="view"></param>
        /// <returns></returns>
        bool StaffPoAdd(StaffPo view);
        /// <summary>
        /// 人员管理—删除
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        bool StaffPoDelete(int id);

        /// <summary>
        /// 部门下拉
        /// </summary>
        /// <returns></returns>
        List<DepartmentPo> departmentPoXia();
    }
}
